Media and multimedia provision to clients over different networks have increased tremendously the last few years. Today, Internet is employed by numerous users for accessing and downloading or streaming media, e.g. in the form of video and audio streams or files, from media servers.
In line with this increasing demand for media provision in different wired and wireless communications networks, there is on-going work in the development of streaming and downloading servers available in wireless networks for providing media content to requesting clients. There is a general trend towards transparent and flexible streaming/downloading servers, implying that the servers should basically consist of a multitude of “standard” modules or programmes performing different media managing functions. The input media content to these functions is then provided together with instructions of how the modules/programmes should process the content. This will provide a more flexible media provision as compared to usage of fixed, pre-defined media processing in the servers.
The Moving Picture Experts Group (MPEG) has standardized a file format, the ISO base media file format [1], that is in line with the trend in the development of streaming and downloading servers. The ISO base media file format specifies a general file format for storage and transmission of multimedia presentations that serves as a base to a number of more specific file format, such as the Advanced Video Coding (AVC) file format [2], the Scalable Video Coding (SVC) file format [3] and the Multiview Video Coding (MVC) file format [4].
The ISO base media file format can group tracks into alternate groups. Tracks that belong to the same alternate group are called alternate tracks and serve as alternatives to one another. They can, for example represent the same content but differ with respect to quality, codec, language, etc. Only one track from each alternate group should be processed at a time in a media session in order to give a complete presentation.
In addition to alternate groups, the ISO base media file format also defines switch groups. All tracks in an alternate group are candidates for media selection, but it may not make sense to switch during an ongoing media session between some of those tracks. For instance, it could be possible to switch between video tracks at different bitrates, while keeping the frame size but not allow switching between tracks of different frame sizes, different video codes or different audio languages. The distinction between the alternate groups and the switch groups is that the tracks in the same switch group are candidates for switching even during an ongoing media session while the tracks that are in the same alternate group but in different switch groups are not to be switched during the ongoing media session.
The prior art organization of media data in tracks and assigning such tracks to different alternate and switch groups work well with most media types. However, problems occur in connection with certain media types, for instance SVC and MVC [5].
SVC is a standardized scalable extension to the well established H.264/AVC video coding standard [5]. SVC allows encoding multiple representations of the video in a single bit stream. Each such coded representation of video at the particular spatial resolution, quality and frame rate is denoted as a layer. The layers constitute a hierarchical relationship, with the lowest layer denoted the base layer (BL) and the successive layers denoted as enhancement layers (ELs).
MVC is an extension of the AVC/SVC standard that targets joint encoding of multiple views. Multiple views are, in this context, video sequences representing the same scene that are taken with different cameras. The structure of MVC views is similar to the structure of SVC layers with the difference that MVC views usually have similar resolution, quality and frame rate.